1. Field of the Invention
The present invention relates generally to a method and apparatus for encoding and decoding a three dimensional (3D) image sequence signal, and in particular, to a method and apparatus of encoding and decoding a 3D image sequence signal containing image sequences for left and right eye viewing.
2. Description of the Related Art
There are three common ways to encode a digital 3D image sequence signal containing left and right eye images. The first method directly encodes a main picture, intended for the right eye, and an indirectly encodes a sub-picture, intended for the left eye. The sub-picture image is formed by parallactic compensation or reference to the main picture. The main and sub pictures are then compressed according to the method described in Japanese Unexamined Patent Publication No. 6-153239. The second method directly encodes a main picture and indirectly encodes a first sub picture, using parallax and motion compensation, with reference to the main picture or second sub picture.
With respect to the first or second methods, however, separate processing of the main and sub-pictures, as described above, complicates timing control and picture code management. With either first or second methods, uniform picture quality is difficult to achieve. Neither method presents an efficient way to control the encoding or decoding of 3D left and right eye image sequences. The third method independently encodes a main picture and a sub-picture, in accordance with the MPEG (Moving Picture Image Coding Experts Group) standards. Decoding a 3D image sequence signal, encoded by any of these methods, is a simple matter of reversing the encoding process to obtain a reconstructed 3D image.
At the present, there are two MPEG standards: MPEG-1 and MPEG-2. The International Standards organization (ISO) defines MPEG-1 as the current standard ISO/IEC 11172, and MPEG-2 as a proposed standard ISO/IEC 13818. The two standards differ from each other in data encoding rates. U.S. Pat. No. 5,231,484, U.S. Pat. No. 5,293,229 and U.S. Pat. No. 5,325,125 are examples of technology designed to meet MPEG system standards. Typical MPEG compliant equipment encode signals in bit stream syntax format. This type of format is based on a six-layered structure: a sequence of Groups Of Pictures (GOP), individual GOPs containing a plurality of pictures, a collection of slices within each picture, a plurality of macroblocks within each slice, and a plurality of blocks within each macroblock. MPEG compliant encoders perform motion-compensated predictive encoding, discrete cosine transformation (DCT), adaptive quantization and Huffman coding to produce an I-picture, P-picture, and B-picture. Typical encoding of B-picture operations first collate one frame of data, called the current frame, with a reference frame of data. The reference frame either precedes or follows the current frame in time. The encoder then searches the reference frame for a reference macroblock--a macroblock with data similar to the current macroblock. The encoder then compresses data in the current frame, and determines the difference between the current and reference macroblock. The encoder next obtains vector data indicating the position of the reference macroblock (also called a motion vector) from the position of the current macroblock. Japanese Unexamined Patent Publication Nos. 4-145777, 4-79484, 3-40687, 4-207790, 4-234276 and 4-40193 disclose the technique of obtaining motion vectors. The MPEG standard ISO/IEC 11172 includes various methods for detecting a motion vector. These methods include full searching, logarithmic searching and telescopic searching. To compress the difference data between the current and reference macroblocks, the encoder performs DCT, quantization and variable-length coding. DCT is performed in the units of 8.times.8 pixels (block), a quarter of the 16.times.16 pixels in a macroblock. MPEG compliant encoders are capable of expanding the compressed difference data, adding motion vector designated macroblock data to the reference frame, and reconstructing the picture data contained in the current macroblock. During difference data expansion, the encoder performs variable-length decoding, inverse quantization and inverse DCT. The encoder typically accesses its own memory to store picture code of at least one frame preceding and following the current picture frame.
Independent encoding of nondivergent right and left eye picture codes, according to the third method however, is a highly inefficient way to compress code. Enhanced 3D images require a perceptible difference between the right and left eye pictures. Nonetheless, the code used to form both pictures is rarely completely divergent over any extended period of time. Typically, much of the code is shared between the right and left eye pictures. Therefore, to separately encode and decode shared code, as the third method does, is inherently inefficient.